package com.freemalll.merchant.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.freemalll.merchant.common.AbstractBaseEntity;
import com.freemalll.merchant.common.CompareField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;

/**
 * <p>
 * 商户教育办学许可证信息
 * </p>
 *
 * @author songshixiong
 * @since 2025-06-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("mer_medical_edu_license")
@Schema(description = "MerMedicalEduLicense对象")
public class MerMedicalEduLicense extends AbstractBaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键")
    @TableId(value = "mmel_id", type = IdType.ASSIGN_UUID)
    @CompareField(value = "mmel_id", skip = true)
    private String mmelId;

    @Schema(description = "所属商户")
    @TableField("mer_id")
    @CompareField(value = "mer_id", skip = true)
    private String merId;

    @Schema(description = "机构名称")
    @TableField("institution_name")
    @CompareField("institution_name")
    private String institutionName;

    @Schema(description = "法人代表")
    @TableField("legal_name")
    @CompareField("legal_name")
    private String legalName;

    @Schema(description = "学校类型")
    @TableField("school_type")
    @CompareField("school_type")
    private String schoolType;

    @Schema(description = "执业登记号")
    @TableField("medical_no")
    @CompareField("medical_no")
    private String medicalNo;

    @Schema(description = "有效期限起")
    @TableField("validate_start")
    @CompareField("validate_start")
    private String validateStart;

    @Schema(description = "有效期限止")
    @TableField("validate_end")
    @CompareField("validate_end")
    private String validateEnd;

    @Schema(description = "办学地址省")
    @TableField("province")
    @CompareField("province")
    private String province;

    @Schema(description = "办学地址市")
    @TableField("city")
    @CompareField("city")
    private String city;

    @Schema(description = "办学地址区")
    @TableField("country")
    @CompareField("country")
    private String country;

    @Schema(description = "办学详细地址")
    @TableField("address")
    @CompareField("address")
    private String address;

    @Schema(description = "办学内容")
    @TableField("educational_content")
    @CompareField("educational_content")
    private String educationalContent;

}
